在例外的章節中,使用了 try-catch-finally,本篇解說拋出例外並由 catch接收例外。
拋出例外會使用到 throw 這個關鍵字。
throw 例外類別產生之物件
而拋出例外時, throw 敘述應使用 new 關鍵字產生物件。
以下範例:令 a,b兩變數,其中b為0 來測試以上的說法。
int a=100,b=0;
try
{
if(b==0)
throw new ArithmeticException();
else
System.out.println(a+"/"+b+"="+a/b);
}
catch(ArithmeticException e)
{
System.out.println(e+" 被拋出");
}
如果當b等於0,就拋出 ArithmeticException 這個例外;
如果b 不等於0,那麼就計算 a/b。
在D15:[Java]例外 exception(基本概念)中提過一個常見例外:整數除以0
因此此範例執行後,會印出
java.lang.ArithmeticException 被拋出
可能會有疑問,即使沒有撰寫 throw new ArithmeticException();
程式也會拋出內建的例外。
本篇的用意在於,若有自己寫的例外類別 程式是無法自動拋出的,
因此必須透過本篇的介紹 來拋出。
如果您喜歡我的文章,可以至 4xDev 的 Java 學習系列閱讀更多 Java 文章。